package com.zmn.oms.zmn.normal.business.interfaces.work.financework;

import com.zmn.oms.common.dto.ResultDTO;
import com.zmn.oms.common.exception.OmsBaseException;
import com.zmn.oms.model.dto.work.modify.must.ZsAccountDTO;
import com.zmn.oms.model.dto.work.modify.must.ZsCheckOutDTO;
import com.zmn.oms.model.dto.work.modify.must.ZsMasterRetentionDTO;
import com.zmn.oms.model.entity.detail.OrderDetail;
import com.zmn.oms.model.entity.work.OrderWork;
import com.zmn.oms.model.vo.work.modify.must.ZsAccountVO;
import com.zmn.oms.model.vo.work.modify.must.ZsCheckOutVO;

import java.util.Date;

/**
 * 类描述：财务工单业务接口
 *
 * @author lujia
 * @date 2018/11/02 21:01
 */
public interface ZsNormalFinanceWorkBService {

    /**
     * 查询收单数据
     *
     * @param orderId     订单Id
     * @param workId      工单Id
     * @param operateType 操作类型
     * @return
     */
    ZsCheckOutVO findCheckoutVo(Long orderId, Long workId, Integer operateType);

    /**
     * 保存收单-门脸（入口）
     * @param checkOutDto
     */
	void saveFacadeCheckOut(ZsCheckOutDTO checkOutDto) throws Exception;

	/**
     * 保存收单
     *
     * @param checkOutDto
     */
    void saveCheckout(ZsCheckOutDTO checkOutDto) throws Exception;

    /**
     * 工单金额校验
     *
     * @param orderWork
     */
    void verifyOrderAmount(OrderWork orderWork) throws OmsBaseException;

}
